<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<link rel="stylesheet" type="text/css"
	href="../extjs/resources/css/ext-all.css" />
<script type="text/javascript" src="../extjs/ext-all.js"></script>
<script type="text/javascript" src="../extjs/ext-lang-zh_CN.js"></script>
<title>Insert title here</title>
</head>
<body>
	<script>
		Ext.onReady(function() {
			mainWindow.show();
			maxNumber();
// 			BelaidupNo();
// 			findAll();
			Ext.getCmp("customersID").hide();
			yushou();
		});
		function yushou(){
			//隐藏载入预付按钮
			Ext.getCmp('yufuload').setVisible(false);
			//隐藏选项卡的下标为0
			Ext.getCmp('mypanel').tabBar.items.items[1].hide();
			Ext.getCmp('mypanel').ActiveTabIndex=0;
		}
		function chongkuan(){
			//显示载入预付按钮
			Ext.getCmp('yufuload').setVisible(true);
			//显示选项卡的下标为1
			Ext.getCmp('mypanel').tabBar.items.items[1].show();
			Ext.getCmp('mypanel').ActiveTabIndex=0;
		}
		//查询最大单号
		function maxNumber(){
// 			alert(.getValue());
			Ext.Ajax.request({
				//被用来向服务器发起请求默认的url  
				url : "/danhao?date="+Ext.util.Format.date(Ext.getCmp('billAccountDate').getValue(), 'Y-m-d'),
				//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串  
				params : [ {} ],
				sync:false,
				//请求时使用的默认的http方法  
				method : "post",
				//请求成功时回调函数  
				success : function(data) {
					 var danhao=Ext.JSON.decode(data.responseText);
					 Ext.getCmp('billAccountID').setValue(danhao);
				},
				//请求失败时回调函数  
				failure : function() {
					Ext.ux.Toast.msg("信息提示", "信息删除出错，请联系管理员!");
				}
			});
		}
		function BelaidupNo(){
			Ext.Ajax.request({
				//被用来向服务器发起请求默认的url  
				url : "/findBelaidupByNo?custID="+Ext.getCmp('customersID').getValue(),
				//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串  
				params : [ {} ],
				sync:false,
				//请求时使用的默认的http方法  
				method : "post",
				//请求成功时回调函数  
				success : function(data) {
					 var listBelaidup=Ext.JSON.decode(data.responseText);
// 					 var congbia = grids.getStore(); 
// 	 				 var shu=Ext.pluck(congbia.data.items,"data");
// 	 				 grids.getSelectionModel().set("sourcetype","ssss");
					 grids.getStore().add(listBelaidup);
				},
				//请求失败时回调函数  
				failure : function() {
					Ext.ux.Toast.msg("信息提示", "信息删除出错，请联系管理员!");
				}
			});
		}
		var begin=1;
		var maxpage=1;
		function findAll() {
			//var song=Ext.encode(forms.getForm().getValues());
			Ext.Ajax.request({
				//被用来向服务器发起请求默认的url  
				url : "/billAccountAll?begin="+begin,
				//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串  
				params : [ {} ],
				sync:false,
				//请求时使用的默认的http方法  
				method : "post",
				//请求成功时回调函数  
				success : function(data) {
					 var pp=Ext.JSON.decode(data.responseText);
					 maxpage=pp.maxpage;
						 Ext.each(pp.pagedata,function(obj){
							 Ext.getCmp('customername').setValue(obj.customerID.gysname);
							 Ext.getCmp('billAccountID').setValue(obj.billAccountID);
							 Ext.getCmp('billAccountDate').setValue(obj.billAccountDate);
							 Ext.getCmp('currID').setValue(obj.currID);
							 Ext.getCmp('discountPer').setValue(obj.discountPer);
							 Ext.getCmp('MakerSign').setValue(obj.makerSign);
							 Ext.getCmp('PermitterSign').setValue(obj.permitterSign);
							 Ext.getCmp('DeptFrom').setValue(obj.deptFrom.deptname);
							 Ext.getCmp('summoney').setValue(obj.sumMoney);
							 Ext.getCmp('currentlyBalance').setValue(obj.sumMoney);
							/*  Ext.each(obj.billAccount_details,function(o){
							 })  */
							 grids.getStore().removeAll();
						 	 grids.getStore().add(obj.billAccount_details);
						 });
				},
				//请求失败时回调函数  
				failure : function() {
					Ext.ux.Toast.msg("信息提示", "信息删除出错，请联系管理员!");
				}
			});
		} 
		
		var fielmenu = new Ext.menu.Menu({
			items : [ {
				xtype:"button",
				text : '入库冲款转入',
				handler:function(){
					BelaidupNo();
				}
			}, {
				xtype:"button",
				text : '退费转入'
			}, {
				xtype:"button",
				id:"yufuload",
				text : '预付载入'
			} ]
		});
		var fielmenu2 = new Ext.menu.Menu({
			items : [ {
				xtype:"button",
				text : '以下冲款',
				handler:function(){
					var zhuan= Ext.getCmp('jiesuan1').getValue();
				}
			}, {
				text : '以下折让'
			} , {
				text : '以下空白'
			}]
		});
		var grids = Ext.create('Ext.grid.Panel', {
			listeners : {
				containerdblclick : function(grid, e, eOpts) { //单击事件
					grid.getStore().add({
						'name' : '12',
						'dizhi' : '',
						'bianma' : '',
						'lianxi' : ''
					});
				},
				itemcontextmenu : function() {
					e.preventDefault();
				}
			},
			plugins : [ Ext.create('Ext.grid.plugin.CellEditing', {
				clicksToEdit : 1
			}) ],
			columns : [ {
				header : '（栏号）',
				xtype : 'rownumberer',
				dataIndex 	: 'lh',
				width : 50,
				sortable : false
			},{
				header : '(单别)',
				dataIndex : 'sourcetype',
				width : 100,
				editor:{ 
					xtype:'textfield'
				},
				renderer : function(value){
					if(value==null||value==''){
							return "采购入库";
					}else{
					     	return value;
					}
				}
			}, {
				header : '(原单日期)',
				dataIndex : 'billDate',
			}, {
				header : '(原单单号)',
				dataIndex : 'billNO'
			}, {
				header : '(交易对象名称)',
				dataIndex : 'businessTarget'
			}, {
				header : '(部门名称)',
				dataIndex : 'departName',
			}, {
				header : '(采购人员)',
				dataIndex : 'salesID'
			}, {
				header : '(项目名称)',
				dataIndex : 'lianxi'
			}, {
				header : '(币别)',
				dataIndex : 'currID'
			}, {
				header : '(汇率)',
				dataIndex : 'exchRate'
			}, {
				header : '(原单金额)',
				dataIndex : 'zongjine'
			}, {
				header : '(现行余额)',
				dataIndex : 'currentlyBalance'
			}, {
				header : '折让金额',
				dataIndex : 'discountsMoney',
				editor:{ 
					xtype:'textfield'
				},
				renderer : function(value){
					if(value==null||value==''){
							return "0.00";
					}else{
					     	return value;
					}
				}
			}, {
				header : '冲款金额',
				dataIndex : 'hlocaMoney',
				editor: {
				      xtype: 'textfield'
				}
			}, {
				header : '冲抵金额',
				dataIndex : 'rushlowBalance',
				editor:{ 
					xtype:'textfield'
				}
			} ],
			height : 130,
			width : 1371,
			autoScroll : false
		})
		var ppa = Ext.create('Ext.panel.Panel', {
			bodyPadding : 6, // 避免Panel中的子元素紧邻边框
			width : 1285,
			height : 170,
			items : [ grids ],
			bbar : [ {
				xtype : "label",
				text : '总计:',
				width : 90
			}, {
				xtype : "textfield",
				disabled : true,
				id:"summoney",
				width : 90,
				margin : '0 180',
				value : '0.00'
			}]
		});
		var grid2 = Ext.create('Ext.grid.Panel', {
			plugins : [ Ext.create('Ext.grid.plugin.CellEditing', {
				clicksToEdit : 1
			}) ],
			columns : [ {
				header : '（栏号）',
				xtype : 'rownumberer',
				dataIndex : 'lh',
				width : 50,
				sortable : false
			}, {
				header : '预收金额',
				dataIndex : 'price',
				editor:{xtype:'textfield'},
				width : 100,
			}, {
				header : '来源别',
				dataIndex : 'sourcetype',
				editor:{xtype:'textfield'},
				width : 120,
				editor : {
					xtype : 'textfield',
					listeners : {
						focus : function(grid, e, eOpts) {
							windows2.show();
						}
					}
				}
			}, {
				header : '来源单号',
				dataIndex : 'sourceID'
			}, {
				header : '摘要',
				editor:{xtype:'textfield'},
				dataIndex : 'hote'
				
			}],
			bodyPadding : 0,
			height : 130,
			width : 1984,
			autoScroll : false,

		})
		var filterPane2 = Ext.create('Ext.panel.Panel', {
			bodyPadding : 0, // 避免Panel中的子元素紧邻边框
			width : 800,
			height : 170,
			items : [ grid2 ],
			bbar : [ {
				xtype : "label",
				text : '总计:',
				width : 90
			}, {
				xtype : "textfield",
				disabled : true,
				width : 90,
				margin : '0 180',
				value : '0.00'
			}, {
				xtype : "textfield",
				disabled : true,
				width : 90,
				margin : '0',
				value : '0.00'
			}, {
				xtype : "textfield",
				disabled : true,
				width : 90,
				margin : '0 40 0 30',
				value : '0.00'
			}, {
				xtype : "textfield",
				disabled : true,
				width : 90,
				margin : '0 0 0 0',
				value : '0.00'
			} ],
		});
		var tbl = Ext.create('Ext.TabPanel', {
			id:'mypanel',
			width : "100%",
			height : 230,
			activeTab: 0,
			autoScroll : true,
			bodyPadding : 5,
			items : [ {
				id:'panel1',
				title : '内容',
				index: 0,
				autoScroll : true,
				items : [ ppa]
			},{
				id:'panel2',
				title : '取用预收',
				index: 1,
				autoScroll : true,
				items : [ filterPane2 ]
			}, {
				id:'panel3',
				title : '备注',
				xtype : 'textarea',
				name : 'Remark',
				index: 2,
				fieldLabel : '备注',
				labelWidth : 30
			} ]
		});

		var formsg = Ext.create('Ext.form.Panel', {
			bodyPadding : 5,
			height : '100%',
			layout : "column",
			baseCls : 'x-plain',
			items : [ {
				xtype : 'textfield',
				name : 'Marker',
				id:"MakerSign",
				fieldLabel : '制单人员',
				style : 'margin-left:19px',
				width : 250,
				labelWidth : 80,
				anchor : '100%',
				value:"Admin",
				readOnly: true
			}, {
				xtype : 'textfield',
				name : 'ProdDepart',
				id:"DeptFrom",
				fieldLabel : '所属部门',
				width : 250,
				labelWidth : 80,
				anchor : '100%',
				value:"采购部"
			}, {
				xtype : 'textfield',
				name : 'Permitter',
				id:"PermitterSign",
				fieldLabel : '复核人员',
				style : 'margin-left:19px',
				width : 250,
				labelWidth : 80,
				anchor : '100%',
				value:"Admin",
				readOnly: true
			}, {
				xtype : 'textfield',
				name : 'ProdProject',
				fieldLabel : '所属项目',
				width : 250,
				labelWidth : 80,
				anchor : '100%',
			} ],
		});

		var formpalcd = Ext.create('Ext.form.Panel', { //表单
			bodyPadding : 5,
			width : '100%',
			// 将会通过 AJAX 请求提交到此URL
			// url: 'save-form.php',
			// 表单域 Fields 将被竖直排列, 占满整个宽度
			layout : 'column',
			defaults : {
				anchor : '100%'
			},
			defaultType : 'textfield',
			items : [ {
				id:"customername",
				style : "color:blue;text-align:center",
				xtype : 'textfield',
				name : 'CustomerID',
				fieldLabel : '供应商',
				labelWidth : 90,
				value:"唐人影城"

			},{
				id:"customersID",
				xtype : 'textfield',
				name : 'currsID',
				value:"gsy00001",
			}, {
				style : 'margin-left:9px;color:blue;text-align:center',
				xtype : 'datefield',
				name : 'billAccountDate',
				id:"billAccountDate",
				fieldLabel : '单据日期',
				labelWidth : 100,
				anchor : '100%',
				format:"Y-m-d",
				value:new Date()
			}, {
				xtype : "textfield",
				fieldLabel : "结算方式一",
				width : 165,
				labelWidth : 90,
				value:"转账"
			}, {
				xtype : "textfield",
				id:"jiesuan1",
				name : "jiesuan1",
				width : 80
			}, {

				style : 'margin-left:9px;color:blue;text-align:center',
				xtype : 'textfield',
				name : 'BillAccountID',
				id:"billAccountID",
				fieldLabel : '单据号码',
				labelWidth : 100,
				anchor : '100%',
				readOnly: true
			}, {
				xtype : "textfield",
				fieldLabel : "结算方式二",
				width : 165,
				labelWidth : 90,
				value:"现金"
			}, {
				xtype : "textfield",
				name : "jiesuan",
				width : 80
			}, {
				style : 'margin-left:9px;text-align:center',
				xtype : 'textfield', //多行文本域
				name : 'CurrID',
				id:"currID",
				fieldLabel : '币别',
				labelWidth : 100,
				anchor : '100%',
				value:"人民币",
				readOnly: true
			}, {
				xtype : "textfield",
				fieldLabel : "结算方式三",
				width : 165,
				labelWidth : 90
			}, {
				xtype : "textfield",
				name : "jiesuan",
				width : 80
			}, {
				style : 'margin-left:9px;text-align:center',
				xtype : 'textfield', //数值
				id:"discountPer",
				name : 'currency',
				fieldLabel : '汇率',
				labelWidth : 100,
				anchor : '100%',
				value:"1.000",
				readOnly: true
			}, {
				xtype : 'textfield',
				name:"DiscountPer",
				style : 'color:blue;text-align:center',
				fieldLabel : '折扣率(100%)',
				labelWidth : 90,
				anchor : '100%',
				value:"0.00",
				readOnly: true
			}, {
				style : 'text-align:center',
				xtype : 'combo',
				value : '付款冲款',
				fieldLabel : '付款方式',
				store : new Ext.data.ArrayStore({
					fields : [ 'value', 'text' ],
					data : [ [ "1", '付款冲款' ], [ "2", '预付冲应付' ]]
				}),
				labelWidth : 109,
				anchor : '100%',
				id:'pay',
				listeners:{
					   select : function(){
	                        if(Ext.getCmp('pay').getRawValue() == '付款冲款'){
	                        	yushou();
	                        }else{
	                        	chongkuan();
	                        }
	                    }
		         },
			}, {

				style : 'margin-left:9px;color:blue;text-align:center',
				xtype : 'datefield',
				name : 'AccMonthToMonth',
				format:"Y-m",
				fieldLabel : '终止帐月',
				labelWidth : 80,
				anchor : '100%',
				value:new Date()
			}, {
				style : 'margin-left:9px;text-align:center',
				xtype : 'textfield', //数值
				name : 'currency',
				fieldLabel : '凭证单号',
				labelWidth : 100,
				anchor : '100%'
			}, tbl, formsg ]

		});
		//上一页
		function shang(){
			if(begin==1){
				Ext.MessageBox.show({   
                    title: '提示' ,   
                    msg: '这已经是第一页了！' ,   
                    buttons: Ext.MessageBox.OK ,   
                    icon: Ext.MessageBox.INFO   
	             });
				return;
			}else{
				begin--;
				findAll();
			}
		}
		//下一页
		function nexts(){
			if(begin==maxpage){
				Ext.MessageBox.show({   
                    title: '提示' ,   
                    msg: '这已经是最后一页了！' ,   
                    buttons: Ext.MessageBox.OK ,   
                    icon: Ext.MessageBox.INFO   
             	});
				return;
			}else{
				begin++;
				findAll();
			}
		}
		var mainWindow = new Ext.Window({
			width : 640,
			height : 530,
			title : "应付冲款单",
			closable : true,
			resizable : false, //设置是否可以改变大小
			draggable : true, //设
			items : [ formpalcd ],
			bbar : [ {
				xtype : "splitbutton",
				text : '功能',
				width : 90,
				menu : fielmenu
			}, {
				xtype : "splitbutton",
				text : '自动计算',
				width : 90,
				menu : fielmenu2
			}, {
				xtype : "button",
				text : '上一页',
				width : 90,
				listeners:{   
                    "click":function(){   
                        shang();
                     }   
	             }    
			}, {
				xtype : "button",
				text : '下一页',
				width : 90,
				listeners:{   
                    "click":function(){   
                        nexts();
                     }   
	             } 
			}],
		});

		function fromaction() {
			alert(Ext.encode(formpalcd.getForm().getValues()));// 序列化表单
		}
	</script>
</body>
</html>